/**
 * 
 */
package com.rangers.auth.base.service;

import java.io.Serializable;
import java.util.List;

import org.springframework.security.core.userdetails.UserDetailsService;

import com.rangers.auth.base.db.UserDbAccess;
import com.rangers.auth.base.details.AuthUser;
import com.rangers.auth.base.details.BriefUser;

/**
 * 用户业务
 * 
 * @version 1.0
 * @author fuhw
 * @date 2017年8月17日 下午6:03:34
 */
@SuppressWarnings("rawtypes")
public interface UserService<T extends BriefUser,AU extends AuthUser, ACCESS extends UserDbAccess<T, ID>,ID extends Serializable> extends UserDetailsService {

	T get(ID id);

	List<T> list();

	T create(T entity);

	T update(T entity);

	void delete(ID id);
	
	T findByUsername(String username);
}
